
// 刷题
//class Solution {
//    public int lengthOfLongestSubstring(String s) {
//        if (s == null || s.length() == 0) return 0;
//        int left = 0, right = 0;
//        Map<Character, Integer> map = new HashMap<>();
//        int maxLen = 0;
//        while (right < s.length()) {
//            while (right < s.length() && map.getOrDefault(s.charAt(right), 0) == 0) {
//                map.put(s.charAt(right), map.getOrDefault(s.charAt(right), 0) + 1);
//                right++;
//            }
//            maxLen = Math.max(maxLen, right - left);
//            while (left < right && right < s.length() && map.getOrDefault(s.charAt(right), 0) >= 1) {
//                map.put(s.charAt(left), map.get(s.charAt(left)) - 1);
//                left++;
//            }
//        }
//        maxLen = Math.max(maxLen, right - left);
//        return maxLen;
//    }
//}